Aspects of the disclosure generally relate to the field of computer storage systems, and, more particularly, to integrating bridge functions with storage controllers.
A network storage controller is a processing system that is used to store and retrieve data on behalf of one or more hosts on a network. A storage controller operates on behalf of one or more hosts to store and manage data in a set of mass storage devices, such as magnetic or optical storage-based disks or tapes. Some storage controllers are designed to service file-level requests from hosts, as is commonly the case with file servers used in network attached storage (NAS) environments. Other storage controllers are designed to service extent-level requests from hosts, as with storage controllers used in a storage area network (SAN) environment. Still other storage controllers are capable of servicing both file-level requests and extent-level requests, as is the case with certain storage controllers made by NetApp, Inc. of Santa Clara, Calif.
Storage controllers can be configured to provide high availability and disaster recovery capabilities. In such configurations, two or more storage controllers, typically located at different sites, are used to replicate data. Data received from a host by a first controller can be written to storage local to the first storage controller. In addition, the first storage controller can forward the data to a second storage controller, which stores a copy of the data on storage local to the second controller. In the event of a failure or other problem with storage attached to the first controller, replicated data can be retrieved from storage local to the second controller.
While such configurations can provide high availability and disaster recovery, the cost of such systems can be high due to the hardware and software components used to implement such configurations.